<!-- HTML header for doxygen 1.8.13-->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<meta http-equiv="X-UA-Compatible" content="IE=9"/>
<title>Open SCA: runtime_env/rte_utils/include/Boost_utils.h File Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript" src="dynsections.js"></script>
<link href="navtree.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="resize.js"></script>
<script type="text/javascript" src="navtreedata.js"></script>
<script type="text/javascript" src="navtree.js"></script>
<script type="text/javascript">
  $(document).ready(initResizable);
  $(window).load(resizeHeight);
</script>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javascript" src="search/searchdata.js"></script>
<script type="text/javascript" src="search/search.js"></script>
<script type="text/javascript">
  $(document).ready(function() { init_search(); });
</script>
<link href="customdoxygen.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div id="top"><!-- do not remove this div, it is closed by doxygen! -->
<div id="titlearea">
<table cellspacing="0" cellpadding="0">
 <tbody>
 <tr style="height: 56px;">
  <td id="projectlogo"><a href="http://www.onetek.net"><img alt="Logo" src="openscaLogo.png"/></a></td>
  <td id="projectalign" style="padding-left: 0.5em;">
   <div id="projectname">Open SCA
   &#160;<span id="projectnumber">Version 0.6.0</span>
   </div>
   <div id="projectbrief">Open SCA</div>
  </td>
 </tr>
 </tbody>
</table>
</div>
<!-- end header part -->
<!-- Generated by Doxygen 1.8.11 -->
<script type="text/javascript">
var searchBox = new SearchBox("searchBox", "search",false,'Search');
</script>
  <div id="navrow1" class="tabs">
    <ul class="tablist">
      <li><a href="index.html"><span>Main&#160;Page</span></a></li>
      <li><a href="pages.html"><span>Related&#160;Pages</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li><a href="annotated.html"><span>Classes</span></a></li>
      <li class="current"><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <span class="left">
          <img id="MSearchSelect" src="search/mag_sel.png"
               onmouseover="return searchBox.OnSearchSelectShow()"
               onmouseout="return searchBox.OnSearchSelectHide()"
               alt=""/>
          <input type="text" id="MSearchField" value="Search" accesskey="S"
               onfocus="searchBox.OnSearchFieldFocus(true)" 
               onblur="searchBox.OnSearchFieldFocus(false)" 
               onkeyup="searchBox.OnSearchFieldChange(event)"/>
          </span><span class="right">
            <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
          </span>
        </div>
      </li>
    </ul>
  </div>
  <div id="navrow2" class="tabs2">
    <ul class="tablist">
      <li><a href="files.html"><span>File&#160;List</span></a></li>
      <li><a href="globals.html"><span>File&#160;Members</span></a></li>
    </ul>
  </div>
</div><!-- top -->
<div id="side-nav" class="ui-resizable side-nav-resizable">
  <div id="nav-tree">
    <div id="nav-tree-contents">
      <div id="nav-sync" class="sync"></div>
    </div>
  </div>
  <div id="splitbar" style="-moz-user-select:none;" 
       class="ui-resizable-handle">
  </div>
</div>
<script type="text/javascript">
$(document).ready(function(){initNavTree('_boost__utils_8h.html','');});
</script>
<div id="doc-content">
<!-- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
</div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="javascript:void(0)" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<div class="header">
  <div class="summary">
<a href="#namespaces">Namespaces</a> &#124;
<a href="#define-members">Macros</a> &#124;
<a href="#func-members">Functions</a> &#124;
<a href="#var-members">Variables</a>  </div>
  <div class="headertitle">
<div class="title">Boost_utils.h File Reference</div>  </div>
</div><!--header-->
<div class="contents">

<p>:   
<a href="#details">More...</a></p>
<div class="textblock"><code>#include &lt;string&gt;</code><br />
<code>#include &quot;<a class="el" href="rte__debug_8h_source.html">rte_debug.h</a>&quot;</code><br />
<code>#include &lt;iostream&gt;</code><br />
<code>#include &lt;boost/interprocess/managed_shared_memory.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/sync/interprocess_mutex.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/sync/interprocess_condition.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/sync/scoped_lock.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/sync/interprocess_semaphore.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/containers/string.hpp&gt;</code><br />
<code>#include &lt;boost/interprocess/allocators/allocator.hpp&gt;</code><br />
<code>#include &lt;boost/thread/thread.hpp&gt;</code><br />
<code>#include &lt;boost/bind.hpp&gt;</code><br />
<code>#include &lt;boost/smart_ptr.hpp&gt;</code><br />
</div><div class="textblock"><div class="dynheader">
Include dependency graph for Boost_utils.h:</div>
<div class="dyncontent">
<div class="center"><img src="_boost__utils_8h__incl.png" border="0" usemap="#runtime__env_2rte__utils_2include_2_boost__utils_8h" alt=""/></div>
<map name="runtime__env_2rte__utils_2include_2_boost__utils_8h" id="runtime__env_2rte__utils_2include_2_boost__utils_8h">
</map>
</div>
</div><div class="textblock"><div class="dynheader">
This graph shows which files directly or indirectly include this file:</div>
<div class="dyncontent">
<div class="center"><img src="_boost__utils_8h__dep__incl.png" border="0" usemap="#runtime__env_2rte__utils_2include_2_boost__utils_8hdep" alt=""/></div>
<map name="runtime__env_2rte__utils_2include_2_boost__utils_8hdep" id="runtime__env_2rte__utils_2include_2_boost__utils_8hdep">
</map>
</div>
</div>
<p><a href="_boost__utils_8h_source.html">Go to the source code of this file.</a></p>
<table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="namespaces"></a>
Namespaces</h2></td></tr>
<tr class="memitem:namespace_b_o_o_s_t___c_o_n_s_t_a_n_t"><td class="memItemLeft" align="right" valign="top"> &#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html">BOOST_CONSTANT</a></td></tr>
<tr class="separator:"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="define-members"></a>
Macros</h2></td></tr>
<tr class="memitem:a7cd49ca790c3be55b2ec4d561175e433"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a7cd49ca790c3be55b2ec4d561175e433">SCA_SHM_SIZE</a>&#160;&#160;&#160;(1024)</td></tr>
<tr class="memdesc:a7cd49ca790c3be55b2ec4d561175e433"><td class="mdescLeft">&#160;</td><td class="mdescRight">&lt; create shared memory of start bootloader  <a href="#a7cd49ca790c3be55b2ec4d561175e433">More...</a><br /></td></tr>
<tr class="separator:a7cd49ca790c3be55b2ec4d561175e433"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a20b39e37e6bab08c0b2b8b74d494ab99"><td class="memItemLeft" align="right" valign="top">#define&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a20b39e37e6bab08c0b2b8b74d494ab99">SCA_SHM</a>&#160;&#160;&#160;(&quot;sca_shm&quot;)</td></tr>
<tr class="separator:a20b39e37e6bab08c0b2b8b74d494ab99"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a>
Functions</h2></td></tr>
<tr class="memitem:ac2ea679308d9273f30e41abf38efac07"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#ac2ea679308d9273f30e41abf38efac07">createSharedMemory</a> (const std::string &amp;shmName, int size)</td></tr>
<tr class="memdesc:ac2ea679308d9273f30e41abf38efac07"><td class="mdescLeft">&#160;</td><td class="mdescRight">Create a shared memory with given name and size.  <a href="#ac2ea679308d9273f30e41abf38efac07">More...</a><br /></td></tr>
<tr class="separator:ac2ea679308d9273f30e41abf38efac07"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:af5275f5331c417561697f6b1c96201c4"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#af5275f5331c417561697f6b1c96201c4">removeSharedMemory</a> (const std::string &amp;shmName)</td></tr>
<tr class="memdesc:af5275f5331c417561697f6b1c96201c4"><td class="mdescLeft">&#160;</td><td class="mdescRight">Destruction a shared memory with given name.  <a href="#af5275f5331c417561697f6b1c96201c4">More...</a><br /></td></tr>
<tr class="separator:af5275f5331c417561697f6b1c96201c4"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:abeac027bb3ec764e04c688dd674a3a78"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#abeac027bb3ec764e04c688dd674a3a78">notifyConditionTrue</a> (const std::string &amp;conditionName)</td></tr>
<tr class="memdesc:abeac027bb3ec764e04c688dd674a3a78"><td class="mdescLeft">&#160;</td><td class="mdescRight">Condition variable notice the state of all threads waiting on this to ready.  <a href="#abeac027bb3ec764e04c688dd674a3a78">More...</a><br /></td></tr>
<tr class="separator:abeac027bb3ec764e04c688dd674a3a78"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a307d03b2bedef0db8b6449b69a066912"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a307d03b2bedef0db8b6449b69a066912">waitConditionTrue</a> (const std::string &amp;conditionName)</td></tr>
<tr class="memdesc:a307d03b2bedef0db8b6449b69a066912"><td class="mdescLeft">&#160;</td><td class="mdescRight">Condition variable notice the state of all threads get lock.  <a href="#a307d03b2bedef0db8b6449b69a066912">More...</a><br /></td></tr>
<tr class="separator:a307d03b2bedef0db8b6449b69a066912"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aeeb6bbdabfc09359908c4084cca16698"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#aeeb6bbdabfc09359908c4084cca16698">sds_lock</a> (const std::string &amp;lockName)</td></tr>
<tr class="memdesc:aeeb6bbdabfc09359908c4084cca16698"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process locking.  <a href="#aeeb6bbdabfc09359908c4084cca16698">More...</a><br /></td></tr>
<tr class="separator:aeeb6bbdabfc09359908c4084cca16698"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ae2931d3a5d6667a4ec373166202ba7e0"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#ae2931d3a5d6667a4ec373166202ba7e0">sds_lock_destroy</a> (const std::string &amp;lockName)</td></tr>
<tr class="separator:ae2931d3a5d6667a4ec373166202ba7e0"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a09c78ef42b69c55f0589605eaa483a42"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a09c78ef42b69c55f0589605eaa483a42">sds_unlock</a> (const std::string &amp;lockName)</td></tr>
<tr class="memdesc:a09c78ef42b69c55f0589605eaa483a42"><td class="mdescLeft">&#160;</td><td class="mdescRight">Process unlocking.  <a href="#a09c78ef42b69c55f0589605eaa483a42">More...</a><br /></td></tr>
<tr class="separator:a09c78ef42b69c55f0589605eaa483a42"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:adb83a541d0810ae6f365708645905f0f"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#adb83a541d0810ae6f365708645905f0f">waitSemaphore</a> (const std::string &amp;semName, int initVal=0)</td></tr>
<tr class="memdesc:adb83a541d0810ae6f365708645905f0f"><td class="mdescLeft">&#160;</td><td class="mdescRight">Decrements the interprocess_semaphore.  <a href="#adb83a541d0810ae6f365708645905f0f">More...</a><br /></td></tr>
<tr class="separator:adb83a541d0810ae6f365708645905f0f"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a232c9f98a5d59507e715c345f8824de1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a232c9f98a5d59507e715c345f8824de1">destroySemaphore</a> (const std::string &amp;semName)</td></tr>
<tr class="separator:a232c9f98a5d59507e715c345f8824de1"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a5b01531cf26bc9923f64895896fd5cf1"><td class="memItemLeft" align="right" valign="top">void&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="_boost__utils_8h.html#a5b01531cf26bc9923f64895896fd5cf1">postSemaphore</a> (const std::string &amp;semName, int initVal=0)</td></tr>
<tr class="memdesc:a5b01531cf26bc9923f64895896fd5cf1"><td class="mdescLeft">&#160;</td><td class="mdescRight">Increments the interprocess_semaphore count.  <a href="#a5b01531cf26bc9923f64895896fd5cf1">More...</a><br /></td></tr>
<tr class="separator:a5b01531cf26bc9923f64895896fd5cf1"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table><table class="memberdecls">
<tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="var-members"></a>
Variables</h2></td></tr>
<tr class="memitem:a1387f4d333332cfe81df9ad942455097"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#a1387f4d333332cfe81df9ad942455097">DEVICE_MANAGER_CND</a></td></tr>
<tr class="separator:a1387f4d333332cfe81df9ad942455097"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:ad9276652cc5ea641f73bf482990ddddb"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#ad9276652cc5ea641f73bf482990ddddb">DOMAIN_MANAGER_CND</a></td></tr>
<tr class="separator:ad9276652cc5ea641f73bf482990ddddb"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a6c6590c122c4a17609cb3783a331cede"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#a6c6590c122c4a17609cb3783a331cede">SYSTEM_MANAGER_CND</a></td></tr>
<tr class="separator:a6c6590c122c4a17609cb3783a331cede"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a7d840181d3156f954c5bf1fc41fb572d"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#a7d840181d3156f954c5bf1fc41fb572d">APP_MUTEX_CND</a></td></tr>
<tr class="separator:a7d840181d3156f954c5bf1fc41fb572d"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:afa48d7857a9c3cc2a020281575a2c396"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#afa48d7857a9c3cc2a020281575a2c396">INIT_DEVICE_CND</a></td></tr>
<tr class="separator:afa48d7857a9c3cc2a020281575a2c396"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:aca4736fa70eb519999f8c15a71d601a6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#aca4736fa70eb519999f8c15a71d601a6">MUTEX_CND</a></td></tr>
<tr class="separator:aca4736fa70eb519999f8c15a71d601a6"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a8f546a2a350406d4a8326fd3b3d1eeb2"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#a8f546a2a350406d4a8326fd3b3d1eeb2">COMP_SYNCHRO_SEM</a></td></tr>
<tr class="separator:a8f546a2a350406d4a8326fd3b3d1eeb2"><td class="memSeparator" colspan="2">&#160;</td></tr>
<tr class="memitem:a79de4ac01a4856652aae60cc0cde29d6"><td class="memItemLeft" align="right" valign="top">const char *&#160;</td><td class="memItemRight" valign="bottom"><a class="el" href="namespace_b_o_o_s_t___c_o_n_s_t_a_n_t.html#a79de4ac01a4856652aae60cc0cde29d6">CHECK_APP_STATUS</a></td></tr>
<tr class="separator:a79de4ac01a4856652aae60cc0cde29d6"><td class="memSeparator" colspan="2">&#160;</td></tr>
</table>
<a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2>
<div class="textblock"><p>:  </p>
<dl class="section author"><dt>Author</dt><dd>open Team </dd></dl>
<dl class="section version"><dt>Version</dt><dd>9 </dd></dl>
<dl class="section date"><dt>Date</dt><dd>2017-03-14 <pre class="fragment">* ==============================================================================
* &lt;Date&gt;     | &lt;Version&gt; | &lt;Author&gt;       | &lt;Description&gt;
* ==============================================================================
*  2015-05-23 | 1       | open Team       | Create file
* ==============================================================================
* </pre> <hr/>
 <h2><center>&copy; Copyright(c)2015-2025 JFounder Info Tech Co.,Ltd</center></h2>
</dd></dl>
<p>All rights reserved. The right to copy, distribute, modify or otherwise make use of this software may be licensed only pursuant to the terms of an applicable JFounder license agreement. Company website: www.onetek.net </p>

<p>Definition in file <a class="el" href="_boost__utils_8h_source.html">Boost_utils.h</a>.</p>
</div><h2 class="groupheader">Macro Definition Documentation</h2>
<a class="anchor" id="a20b39e37e6bab08c0b2b8b74d494ab99"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SCA_SHM&#160;&#160;&#160;(&quot;sca_shm&quot;)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Definition at line <a class="el" href="_boost__utils_8h_source.html#l00042">42</a> of file <a class="el" href="_boost__utils_8h_source.html">Boost_utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="a7cd49ca790c3be55b2ec4d561175e433"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">#define SCA_SHM_SIZE&#160;&#160;&#160;(1024)</td>
        </tr>
      </table>
</div><div class="memdoc">

<p>&lt; create shared memory of start bootloader </p>
<p>Name of shared memory from boost, contains semaphores, locks, conditional variables </p>

<p>Definition at line <a class="el" href="_boost__utils_8h_source.html#l00040">40</a> of file <a class="el" href="_boost__utils_8h_source.html">Boost_utils.h</a>.</p>

</div>
</div>
<h2 class="groupheader">Function Documentation</h2>
<a class="anchor" id="ac2ea679308d9273f30e41abf38efac07"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void createSharedMemory </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>shmName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>size</em>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Create a shared memory with given name and size. </p>

</div>
</div>
<a class="anchor" id="a232c9f98a5d59507e715c345f8824de1"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void destroySemaphore </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>semName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="abeac027bb3ec764e04c688dd674a3a78"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void notifyConditionTrue </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>conditionName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Condition variable notice the state of all threads waiting on this to ready. </p>

</div>
</div>
<a class="anchor" id="a5b01531cf26bc9923f64895896fd5cf1"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void postSemaphore </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>semName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>initVal</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Increments the interprocess_semaphore count. </p>
<p>If there are processes/threads blocked waiting for the interprocess_semaphore, then one of these processes will return successfully from its wait function. </p>

<p>Definition at line <a class="el" href="_boost__utils_8h_source.html#l00134">134</a> of file <a class="el" href="_boost__utils_8h_source.html">Boost_utils.h</a>.</p>

</div>
</div>
<a class="anchor" id="af5275f5331c417561697f6b1c96201c4"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void removeSharedMemory </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>shmName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Destruction a shared memory with given name. </p>

</div>
</div>
<a class="anchor" id="aeeb6bbdabfc09359908c4084cca16698"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sds_lock </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>lockName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Process locking. </p>

</div>
</div>
<a class="anchor" id="ae2931d3a5d6667a4ec373166202ba7e0"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sds_lock_destroy </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>lockName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

</div>
</div>
<a class="anchor" id="a09c78ef42b69c55f0589605eaa483a42"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void sds_unlock </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>lockName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Process unlocking. </p>

</div>
</div>
<a class="anchor" id="a307d03b2bedef0db8b6449b69a066912"></a>
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void waitConditionTrue </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>conditionName</em></td><td>)</td>
          <td></td>
        </tr>
      </table>
</div><div class="memdoc">

<p>Condition variable notice the state of all threads get lock. </p>

</div>
</div>
<a class="anchor" id="adb83a541d0810ae6f365708645905f0f"></a>
<div class="memitem">
<div class="memproto">
<table class="mlabels">
  <tr>
  <td class="mlabels-left">
      <table class="memname">
        <tr>
          <td class="memname">void waitSemaphore </td>
          <td>(</td>
          <td class="paramtype">const std::string &amp;&#160;</td>
          <td class="paramname"><em>semName</em>, </td>
        </tr>
        <tr>
          <td class="paramkey"></td>
          <td></td>
          <td class="paramtype">int&#160;</td>
          <td class="paramname"><em>initVal</em> = <code>0</code>&#160;</td>
        </tr>
        <tr>
          <td></td>
          <td>)</td>
          <td></td><td></td>
        </tr>
      </table>
  </td>
  <td class="mlabels-right">
<span class="mlabels"><span class="mlabel">inline</span></span>  </td>
  </tr>
</table>
</div><div class="memdoc">

<p>Decrements the interprocess_semaphore. </p>
<p>If the interprocess_semaphore value is not greater than zero, then the calling process/thread blocks until it can decrement the counter. </p>

<p>Definition at line <a class="el" href="_boost__utils_8h_source.html#l00107">107</a> of file <a class="el" href="_boost__utils_8h_source.html">Boost_utils.h</a>.</p>

</div>
</div>
</div><!-- contents -->
</div><!-- doc-content -->
<!-- HTML footer for doxygen 1.8.13-->
<!-- start footer part -->
<div id="nav-path" class="navpath"><!-- id is needed for treeview function! -->
  <ul>
    <li class="navelem"><a class="el" href="dir_f225e4d86008d3e73336a06c8611e2b4.html">runtime_env</a></li><li class="navelem"><a class="el" href="dir_8f9a475dbd6b925c5ec1184392d41305.html">rte_utils</a></li><li class="navelem"><a class="el" href="dir_8a3d4f0e83014ff517f4732af5005de4.html">include</a></li><li class="navelem"><a class="el" href="_boost__utils_8h.html">Boost_utils.h</a></li>
    <li class="footer">Generated on Fri Jul 12 2019 14:31:54 for
    <a href="http://www.onetek.net">
    <img class="footer" src="openscaLogo.png" height="31" alt="openSCA"/></a>
    </li>
  </ul>
</div>
</body>
</html>
